1. Field of the Invention
The present invention generally relates to service mediation for supporting interactions among services in heterogeneous and dynamic environments and, more particularly, to a semantic service mediation system that performs service correlation systematically as part of the service mediation, freeing programmers from understanding extraordinary details of service interfaces when enabling service composition.
2. Background Description
Service mediation is a very active area of research and development. As background to the invention, we first review some work in the area of service discovery (matching), and then look at some service composition prototypes.
Service discovery and matching is one of the cornerstones for service mediations. Current Web service infrastructures have limitations on providing flexibility to choose selection criteria along multiple dimensions. For instance, UDDI (Universal Description, Discovery and Integration) provides limited search facilities that allows only keyword-based searching of services. To overcome this limitation, semantic technology (as described, for example, in B. Benatallah, M.-S. Hacid, A. Leger, C. Rey, and F. Toumani., “On automating web services discovery”, The VLDB Journal, 14(1):84-96, 2005, and M. Paolucci, T. Kawamura, T. Payne, and K. Sycara. “Importing the Semantic Web in UDDI”, Proceedings of Eservices and the Semantic Web Workshop, 2002) is used to support multiple dimension searching criterions for services. For example, in the paper by M. Paolucci et al., the service description capabilities within DAML-S are mapped into UDDI records, in which semantic descriptions are used to support service discovery and matching. In the paper by B. Benatallah et al. a flexible matchmaking among service descriptions and requests by adopting Description Logics (DLs). However, most of these semantic solutions focus on one-to-one matchings.
Typically, a service mediation system contains three roles: (1) service providers, who publish services; (2) service consumers, who request services, (3) service mediators, who are responsible for service repository management, service matching, service invocation and invocation result delivery. The early service mediations are keyword and value-based: (i) the service discovery is keyword-based (e.g., UDDI (Universal Description, Discovery and Integration)); (ii) service invocations are based on the value of exchanged messages, and the mediator does not perform any data transformations during which. For example, a service request is about retrieving a sports car's insurance quote, where the input parameter's type is SportsCar and output parameter's type is CarPremium. For the value-based service mediation, only the services that exactly match input parameter type SportsCar and output parameter type CarPremium can satify the request. In case the service request and service interfaces' input/output parameter types are not exactly matched, then the data format transformation needs to be provided by programmers.
Consequently, as an improvement to keyword and type-based solutions, semantics are introduced into service mediations, wherein ontologies enable richer semantics of service descriptions and more flexible matchings. See, for example, B. Benatallah et al., supra, and M. Paolucci, T. Kawmura, T. Payne, and K. Sycara, “Semantic Matching of Web Services Capabilities”, First International Semantic Web Conference, 2002. However, in current semantic service mediation systems, the concept mapping (i.e., A “is a” B) is provided when the service requests and service interfaces are not exactly matched. However, it does not support the mapping that involves transformation functions (e.g., A=f(B)). Therefore, when composting services (as described, for example, in L. Zeng, B. Benatallah, H. Lei, A. Ngu, D. Flaxer, and H. Chang, “Flexible Composition of Enterprise Web Services”, Electronic Markets—The International Journal of Electronic Commerce and Business Media, 2003, and L. Zeng. B. Benatallah, A. H. H. Ngu, M. Dumas, J. Kalagnanam, and H. Chang, “QoS-Aware Middleware for Web Services Composition”, IEEE Transactions on Software Engineering, 30(5):311-327, 2004), developers need to not only understand detail specifications of available service interfaces to create composition schemas, but also implement the data transformation functions.